<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui"> 

<h:head></h:head> 
<h:body> 
	<h:form prependId="false" id="form1">
		<p:panel header="Atendimento" id="cadate">
			<h:panelGrid columns="2">
			    <h:outputText value="Cliente:" />
			    <h:panelGrid columns="2">                     
				   	<p:autoComplete size="50" value="#{atendimentoControl.atendimento.cliente}" id="acCliente" completeMethod="#{atendimentoControl.listarClientesPorNome}"
				                        var="p" itemLabel="#{p.nome}" itemValue="#{p}" converter="atendimentoClienteConverter" forceSelection="true" />
				    <p:commandButton value="carregar" actionListener="#{atendimentoControl.carregarCliente}" update="pnCliente" />                    
			    </h:panelGrid>
			</h:panelGrid>
			<p:tabView id="pnCliente">
				<p:tab title="Dados do Cliente" >
					<h:panelGrid columns="2" >
						Nome:
						<h:outputText value="#{atendimentoControl.atendimento.cliente.nome}" />
						Telefone:
						<h:outputText value="#{atendimentoControl.atendimento.cliente.telefone}" />
						Escolaridade:
						<h:outputText value="#{atendimentoControl.atendimento.cliente.escolaridade}" />
						Nacionalidade:
						<h:outputText value="#{atendimentoControl.atendimento.cliente.nacionalidade}" />
					</h:panelGrid>
					<h:panelGrid columns="2">
						<p:dataTable id="tbAgendamentos" value="#{atendimentoControl.agendamentos}" var="age">
							<f:facet name="header">Agendamentos</f:facet>
							<p:column headerText="Data">
								<h:outputText value="#{age.inicioData}" />
							</p:column>
							<p:column headerText="Horario">
								<h:outputText value="#{age.inicioHora}" />
							</p:column>
							<p:column headerText="Situação">
								<p:commandButton action="#{atendimentoControl.vincular(age)}" value="Vincular" rendered="#{((atendimentoControl.atendimento.agendamento==null) and (age.atendimento==null))}" ajax="false" />
								<h:outputText value="Vinculado" rendered="#{(age.atendimento!=null) and (atendimentoControl.atendimento.agendamento!=age)}" />
								<h:outputText value="Não Vinculado" rendered="#{((age.atendimento==null) and (atendimentoControl.atendimento.agendamento!=null) and (atendimentoControl.atendimento.agendamento!=age))}" />
								<h:outputText value="Vinculo Atual" rendered="#{(atendimentoControl.atendimento.agendamento==age)}" />
								
							</p:column>
						</p:dataTable>

						<p:dataTable id="tbAtendimentos" value="#{atendimentoControl.atendimentos}" var="ate">
							<f:facet name="header">Atendimentos</f:facet>
							<p:column headerText="Data">
								<h:outputText value="#{ate.inicioData}" />
							</p:column>
							<p:column headerText="Horario">
								<h:outputText value="#{ate.inicioHora}" />
							</p:column>
							<p:column headerText="Resumo">
								<h:outputText value="#{ate.resumo}" />
							</p:column>
							<p:column headerText="...">
								<p:commandButton action="#{atendimentoControl.vincular(age)}" value="Vincular" rendered="#{((atendimentoControl.atendimento.agendamento==null) and (age.atendimento==null))}" ajax="false" />
							</p:column>
						</p:dataTable>						
					</h:panelGrid>
				</p:tab>
				<p:tab title="Atendimento Atual">
					<h:panelGrid columns="2">
						<h:panelGrid>
							<h:panelGrid columns="5" style="border:1px solid #CCCCCC">
								Ser:
							   	<p:autoComplete size="23" value="#{atendimentoControl.servico}" id="acServico" completeMethod="#{atendimentoControl.listarServicosPorNome}"
							                        var="p" itemLabel="#{p.descricao}" itemValue="#{p}" converter="atendimentoServicoConverter" forceSelection="true" />
								Qtde:
								<p:spinner size="1" value="#{atendimentoControl.sQuantidade}"/>
								<p:commandButton value="Adicionar" actionListener="#{atendimentoControl.adicionarServico}" update="gridServicos total" />
							</h:panelGrid>
							<h:panelGrid style="border:1px solid #CCCCCC">
								<p:dataTable scrollable="true" scrollHeight="400"  emptyMessage="Nenhum serviço indicado!" id="gridServicos" value="#{atendimentoControl.atendimento.servicos}" var="ser" >
									<p:column style="width:240px" headerText="Serviço">
										<h:outputText value="#{ser.servico.descricao}" />
									</p:column>
									<p:column headerText="Qtde">
										<h:outputText value="#{ser.quantidade}"  />
									</p:column>
									<p:column headerText="Unitario" style="width:70px; text-align: right;">
										<h:outputText value="#{ser.precoUnitario}" >
											<f:convertNumber pattern="##,###,##0.00" />
										</h:outputText>
									</p:column>
									<p:column headerText="Total" style="width:70px; text-align: right;">
										<h:outputText value="#{ser.precoTotal}">
											<f:convertNumber pattern="##,###,##0.00" />
										</h:outputText>
									</p:column>
									<p:column headerText="...">
										<p:commandLink value="X" style="padding:1px;" action="#{atendimentoControl.removerServico(ser)}" update="gridServicos total" ajax="false"/>
									</p:column>
									<p:columnGroup type="footer">
										<p:row>
											<p:column footerText="Total:"/>
											<p:column/>
											<p:column/>
											<p:column>
												<f:facet name="footer">
													<h:outputText value="#{atendimentoControl.atendimento.totalServico}">
														<f:convertNumber pattern="##,###,##0.00" />
													</h:outputText>
												</f:facet>
											</p:column>
											<p:column/>
										</p:row>
									</p:columnGroup>
								</p:dataTable>
							</h:panelGrid>
						</h:panelGrid>
						<h:panelGrid>
							<h:panelGrid  columns="5" style="border:1px solid #CCCCCC">
								Mat:
							   	<p:autoComplete size="23" value="#{atendimentoControl.material}" id="acMaterial" completeMethod="#{atendimentoControl.listarMateriaisPorNome}"
							                        var="m" itemLabel="#{m.descricao}" itemValue="#{m}" converter="atendimentoMaterialConverter" forceSelection="true" />
								Qtde:
								<p:spinner size="1" value="#{atendimentoControl.mQuantidade}"/>
								<p:commandButton value="Adicionar" update="gridMateriais total" actionListener="#{atendimentoControl.adicionarMaterial}" />
							</h:panelGrid>
							<h:panelGrid style="border:1px solid #CCCCCC">
								<p:dataTable scrollable="true" scrollHeight="400" emptyMessage="Nenhum Material Indicado" id="gridMateriais" value="#{atendimentoControl.atendimento.materiais}" var="mat">
									<p:column style="width:240px" headerText="Material">
										#{mat.material.descricao}
									</p:column>
									<p:column headerText="Qtde">
										#{mat.quantidade}
									</p:column>
									<p:column headerText="Unitario" style="width:70px; text-align: right;">
										<h:outputText value="#{mat.precoUnitario}" >
											<f:convertNumber pattern="##,###,##0.00" />
										</h:outputText>
									</p:column>
									<p:column headerText="Total" style="width:70px; text-align: right;">
										<h:outputText value="#{mat.precoTotal}">
											<f:convertNumber pattern="##,###,##0.00" />
										</h:outputText>
									</p:column>
									<p:column headerText="...">
										<p:commandLink value="X" style="padding:1px;" action="#{atendimentoControl.removerMaterial(mat)}" update="gridServicos total" ajax="false"/>
									</p:column>
										
									<p:columnGroup type="footer">
										<p:row>
											<p:column footerText="Total:"/>
											<p:column/>
											<p:column/>
											<p:column>
												<f:facet name="footer">
													<h:outputText value="#{atendimentoControl.atendimento.totalMaterial}">
														<f:convertNumber pattern="##,###,##0.00" />
													</h:outputText>
												</f:facet>
											</p:column>
											<p:column/>
										</p:row>
									</p:columnGroup>
								</p:dataTable>
							</h:panelGrid>
						</h:panelGrid>
						<f:facet name="footer">
							Total Geral do Atendimento: <h:outputText id="total" value="#{atendimentoControl.getTotalGeral()}" ><f:convertNumber pattern="##,###,##0.00" /></h:outputText>
						</f:facet>
					</h:panelGrid>
					<h:panelGrid style="width:100%">
						<h:outputLabel value="Resumo do Atendimento" />
							<p:inputTextarea  value="#{atendimentoControl.atendimento.resumo}" style="width:100%;" />
						<h:outputLabel value="Receita" />
							<p:inputTextarea  value="#{atendimentoControl.atendimento.receita}" style="width:100%;" />
						<p:commandButton actionListener="#{atendimentoControl.registrarAtendimento}" value="Salvar"/>	
					</h:panelGrid>
				</p:tab>
			</p:tabView>
		</p:panel>	
	</h:form>
</h:body> 
</html>
